//package cn.itcast.utils;
//
//
//import cn.itcast.domain.ValidationResult;
//import com.alibaba.dubbo.common.utils.CollectionUtils;
//import javax.validation.ConstraintViolation;
//import javax.validation.Validation;
//import javax.validation.Validator;
//import javax.validation.groups.Default;
//import java.util.HashMap;
//import java.util.Map;
//import java.util.Set;
//
//public class ValidationUtils {
//
//    private static Validator validator = Validation.buildDefaultValidatorFactory().getValidator();
//
//    public static <T> ValidationResult validateEntity(T obj) {
//        //创立ValidationResult 对象
//        ValidationResult result = new ValidationResult();
//        //添加 校验的对象 遍历对象的集合
//        Set<ConstraintViolation<T>> set = validator.validate(obj, Default.class);
//
//        if (CollectionUtils.isNotEmpty(set)) {
//
//            result.setHasErrors(true);
//
//            Map<String, String> errorMsg = new HashMap< String, String>();
//
//            for (ConstraintViolation<T> cv : set) {
//
//                errorMsg.put(cv.getPropertyPath().toString(), cv.getMessage());
//
//            }
//
//            result.setErrorMsg(errorMsg);
//        }
//        return result;
//    }
//
//    public static <T> ValidationResult validateProperty(T obj, String propertyName) {
//        ValidationResult result = new ValidationResult();
//        Set<ConstraintViolation<T>> set = validator.validateProperty(obj, propertyName, Default.class);
//        if (CollectionUtils.isNotEmpty(set)) {
//            result.setHasErrors(true);
//            Map<String, String> errorMsg = new HashMap< String, String>();
//            for (ConstraintViolation<T> cv : set) {
//                errorMsg.put(propertyName, cv.getMessage());
//            }
//            result.setErrorMsg(errorMsg);
//        }
//        return result;
//    }
//
//}